An Integrated Program Representation for Loop Optimizations
نویسندگان
چکیده
Title of thesis: AN INTEGRATED PROGRAM REPRESENTATION FOR LOOP OPTIMIZATIONS Greeshma Yellareddy, Master of Science, 2011 Thesis directed by: Professor Rajeev Barua Department of Electrical and Computer Engineering Inspite of all the advances, automatic parallelization has not entered the general purpose compiling environment for several reasons. • There have been two distinct schools of thought in parallelization domain namely, affine and non-affine which have remained incompatible with each other over the years. Thus, a good practical compiler will have to be able to analyze and parallelize any type of code – affine or non-affine or a mix of both. • To be able to achieve the best performance, compilers will have to derive the order of transformations best suitable for a given program on a given system. This problem, known as “Phase Ordering”, is a very crucial impedance for practical compilers, more so for parallelizing compilers. The ideal compiler should be able to consider various orders of transformations and reason about the performance benefits of the same. In order to achieve such a compiler, in this paper, we propose a unified program representation which has the following characteristics: • Modular in nature. • Ability to represent both affine and non-affine transformations. • Ability to use detailed static run-time estimators directly on the representation. AN INTEGRATED PROGRAM REPRESENTATION FOR LOOP OPTIMIZATIONS
منابع مشابه
An Integrated Program Representation for Loop Optimizations
Inspite of all the advances, automatic parallelization has not entered the general purpose compiling environment for several reasons. i.There have been two distinct schools of thought in parallelization domain namely, affine and non-affine which have remained incompatible with each other over the years. Thus, a good practical compiler will have to be able to analyze and parallelize any type of ...
متن کاملPolly - Performing Polyhedral Optimizations on a Low-Level Intermediate Representation
The polyhedral model for loop parallelization has proved to be an effective tool for advanced optimization and automatic parallelization of programs in higher-level languages. Yet, to integrate such optimizations seamlessly into production compilers, they must be performed on the compiler’s internal, low-level, intermediate representation (IR). With Polly, we present an infrastructure for polyh...
متن کاملFPO: A Framework for Predicting the Impact of Optimizations
When applying optimizations, a number of decisions are made using fixed strategies, such as always applying an optimization if it is applicable, applying optimizations in a fixed order and assuming a fixed configuration for optimizations such as tile size and loop unrolling factor. In this paper, we present a framework that enables these decisions to be made based on predicting the impact of an...
متن کاملCost-Model Driven Integration of Restructuring Optimizations
Loop transformation and array restructuring are important compiler optimizations that improve memory locality in complementary ways. Although previous researchers have proposed integrating the two techniques, there exists no analytical framework for determining how best to combine them for a given program. In this paper, we propose a cost model for choosing between all combinations of loop and ...
متن کاملGRAPHITE: Polyhedral Analyses and Optimizations for GCC
We present a plan to add loop nest optimizations in GCC based on polyhedral representations of loop nests. We advocate a static analysis approach based on a hierarchy of interchangeable abstractions with solvers that range from the exact solvers such as OMEGA, to faster but less precise solvers based on more coarse abstractions. The intermediate representation GRAPHITE1 (GIMPLE Represented as P...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011